package cn.neusoft.exception;

public enum  AppExceptionCodeMsg {

    INVOID_CODE(10000,"验证码无效"),
    USERNAME_NOT_EXISTS(10001,"用户名不存在"),
    REQUEST_PARAM_EMPTY(10002,"请求参数为空"),

    REQUEST_PARAM_INVALIDE(10008,"请求参数不合理"),

    CUSTOMER_HAVE_ORDER(10003,"用户下过订单"),
    COMMODITY_NOT_EXISTS(10004,"商品不存在"),

    ORDER_KIND_INVALID(10004, "订单类型非法"),
    CODE_SEND_FAILED(10005, "验证码发送失败"),

    LogicalWrong (11111,"业务逻辑错误"),
    AllocationWarehouseError(11112,"出入库房相同，调拨单非法"),

    DEPT_NAME_DUPLICATED(11000, "部门名称重复"),
    DEPT_DELETE_HASCHILD(11001, "存在子部门，不能删除"),
    DEPT_NOT_EXISTS(11002,"部门不存在"),
    DEPT_PARENT_NOT_EXITS(11003,"父部门不存在"),
    DEPT_STATUS_INVALID(11004,"部门状态参数非法"),

    OPERATOR_NOT_EXISTS(12000, "员工不存在"),
    OPERATOR_STATUS_INVALID(12001,"员工状态参数非法"),
    OPERATOR_SEX_INVALID(12002, "员工性别非法"),
    OPERATOR_PASSWORD_INVALID(12003, "员工密码非法"),
    OPERATOR_TEL_INVALID(12004, "员工手机号非法"),
    OPERATOR_ACCOUNT_DUPLICATED(12005, "员工账户名重复"),
    OPERATOR_TEL_DUPLICATED(12006, "员工手机号重复"),
    OPERATOR_ACCOUNT_NOT_EXITS(12007, "账号不存在"),
    OPERATOR_ACCOUNT_PASSWORD_WRONG(12008, "账号或密码错误"),
    OPERATOR_TEL_NOT_EXITS(12009, "手机号不存在"),
    ROLE_NOT_EXITS(12010, "角色不存在"),

    WAREHOUSE_LEVEL_INVALID(13001, "库房级别非法"),
    WAREHOUSE_QUOTA_INVALID(13002, "库存预警值或最大限额非法"),
    WAREHOUSE_STATUS_INVALID(13003, "库房状态非法"),
    WAREHOUSE_EXCEED_MaxVALUE(13004,"超过库房最大限额"),

    SERVICE_ERROR(16001,"服务异常熔断降级"),

    TASK_DELIVERY_FEE_INVALID(14001, "任务单配送费非法"),
    TASK_TYPE_INVALID(14002, "任务单类型非法"),
    TASK_ORDER_ASSIGNABLE_CANNOT_FIND(14003,"找不到对应id的可分配订单"),
    TASK_CANNOT_UPDATE(14004, "当前任务单不可修改"),
    TASK_CANNOT_ASSIGN(14005, "当前任务单不可分配"),
    TASK_NOT_EXISTS(14006, "任务单不存在"),
    CANNOT_GENERATE_DELIVERY_RECEIPT(14007, "不能生成配送签收单，只有已分配的任务单才能生成配送签收单"),
    TASK_CANNOT_ENTRY_RECEIPT(14008, "任务单不能回执，只有已领货的任务单才能回执"),
    ORIGINAL_ORDER_NOT_EXITS(14009, "原订单不存在"),
    SCHEDULE_STRATEGY_INVALID(14010, "调度策略非法"),

    BAIDU_MAP_API_ERROR(15001, "百度地图接口异常");


    private final Integer code;
    private final String msg;

    public Integer getCode() {
        return code;
    }

    public String getMsg() {
        return msg;
    }

    AppExceptionCodeMsg(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }
}